home *** CD-ROM | disk | FTP | other *** search
-  
-
-
-
-
- 1. Introduction
- The Object Plant gives you the opportunity to create four different kinds of descriptions of a software
- system.
-
- The notation is based upon the Object Modeling Technique (OMT) developed by Rumbaugh et al and
- UML (Unified Modelling Language) developed by Rumbaugh, Booch and Jacobson. This help text
- will only refer to OMT notation.
-
- This is not a complete description of the program, refer to the User's Manual for more information.
-
-
- 1.1 The Object Model
-
- "An object model captures the static structure of a system by showing the objects in the system, relation-
- ships between the objects, and the attributes and operations which characterize each class of objects."
-
- The Object Plant allows you to create Object Model diagrams, where you can model classes, interfaces,
- associations, generalizations and aggregations. The Object Model diagram can be split into several pages,
- each page representing a part of a system.
-
- The picture below shows an example of an Object Model diagram.
-
-  
-
-
-
-
-
-
-
-
-
-
-
-
-
- 1.2 The Dynamic Model
-
- "The major dynamic modeling concepts are events, which represent external stimuli, and states, which
- represent values of objects"
-
- The Object Plant allows you to create Event Trace diagrams and State diagrams. Each of them can be
- divided into several pages much like the Object Model diagram.
-
- Substates will eventually be provided, but the current version does not support substates.
-
- The picture below shows an example of an Event Trace diagram.
-
-  
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- A thread is normally an object in the software system. The boxes on a thread shows when the object is active.
- Events can either be function calls, queue messages or some other way of communication.
-
- 1.3 Use Case diagram
-
- "A use case diagram shows the relationship among actors and use cases within a system. A use case diagram
- is a graph of actors, a set of use cases enclosed by a system boundary, communication (participation)
- associations between the actors and the use cases, and generalizations among use cases."
-
- The picture below shows an example of a Use Case diagram.
-
-  
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 2. Object Model Diagram
-
- The Object Model Toolbox contains eleven different tools:
-
-  
-
-
-
-
-
-
-
-
-
-
-
-
- 2.1 Select Tool
- The select tool is used to select one or several of the items in an Object Model page. There are only two types
- of items in an Object Model page, class items and association items, where association items may be of the
- Aggregation, Association or Generalization type.
-
- To select one item click on the item. A selected item is marked by a set of small black squares positioned at
- the corners of the item.
-
- To select several items, one may either shift-click the items or framing a set of items by holding the mouse
- button down while stretching a select frame.
-
- The select tool is also used to move items. If you hold the mouse button down when selecting a class, the
- cursor will after will change to a move cursor   . You may then move the selected items freely. If you hold
- the mouse button down when selecting an association, the move cursor will appear only if the cursor is
- positioned above a black select square. If you then move the mouse, that point of the association will move.
-
- The select tool is used to created subsystems. This is done by doubleclicking on a class box while pressing
- the option-key. The top level class box will then be drawn with a dashed outline to indicate that it is a sub-
- system and not a real class. A new page for the subsystem will automatically be created and the page will
- have the name of the "parent-class". In the page palette, the name of subsystems will be indented relative
- its parent.
-
-
-
- 2.2 Class Tool
- The Class Tool is used to create class items in the Object Model. Not much to say about this tool...
-
-
- 2.3 Interface Tool
- The Interface Tool is used to create interface items in the Object Model. Interfaces are not supported in
- the OMT notation but Unified Modeling Language supports interfaces.
-
-
- 2.4 Supplier Tool
- The Supplier Tool is used to create an supplier association between a class and an interface (a class
- supplies an interface). When this tool is selected the cursor will change into the association cursor  .
-
- Position the cursor at a class, press and hold the button and stretch a line to the interface and then release
- the button.
-
- If you release the button outside any class item, no association will be created.
-
-
- 2.5 Association Tool
- The Association Tool is used to create an Association between two classes. When this tool is selected the
- cursor will change into the association cursor.
-
- Position the cursor at a class, press and hold the button and stretch a line to the other class and then release
- the button. If you want a selfreferencing association, press and release the button in the same class item.
-
-
- 2.6 Aggregation Tool
- The Aggregation Tool works almost the same as the Association Tool but with one difference. It is possible to
- create multibranch aggregations:
-
-  
-
-
-
-
-
-
-
-
- To make a multibranch aggregation, start creating an ordinary aggregation between two classes. Add a new
- branch by pushing the button on the aggregation, either any of the lines or in the small diamond. Then
- stretch it to a class item and release the button.
-
-
- 2.7 Generalization Tool
- The Generalization Tool works as the Aggregation Tool. Multibranch generalizations are possible.
-
-
- 2.8 Package Tool
- The Package Tool can be used to create a grouping of model elements. "Packages may be nested within
- other packages. A package may contain both subordiante packages and ordinary model elements. The
- entire system can be thought of as a single high-level package with everything else in it. All kinds of
- model elements and diagrams can be organized into packages."
-
- Creating a package will automatically create a new sub-page relative the current page.
-
-
- 2.9 Cut Tool
- The Cut Tool can be used to split an association line into two. Position the top of the knife cursor at the line
- where you want it to be splitted.
-
-
- 2.10 Note Tool
- You can place notes anywhere in the diagrams. In the current version, notes are not related to any
- particular part of a diagram, they are standalone, but in future releases they will be connected to some
- other item in a diagram.
-
- A note can, for example, include pseudo code to illustrate the implementation of a class operation.
-
-  
-
-
-
- A note can be resized by selecting it and draging in any of the corner squares.
-
- 2.11 Inspect Tool
- With this tool you can read the Description field of every item (class, association etc) without having to
- open a dialog window for the item. Just position the magnifying glass above the item you want to study
- and the description text will be presented in a "balloon-ish" frame.
-
-  
-
-
-
-
-
-
-
-
- 2.11 Nested Object Models
- You can create nested models containing subsystems each of them described on a separate Object Model page.
- A class item can be turned into a subsystem by double-clicking on the class item with the select tool while
- pressing the option-key. A new page will then be opened which has the name of the class item. The name of
- the new page page cannot be changed, it will always have the same name as it original class.
-
- The original class item will be drawn with a dashedout line to indicate that it is a subsystem. If you try to
- delete such a class, a confirmation dialog will show up. If you confirm the deletion of the class, the nested
- page will also be deleted.
-
- In the page palette window, nested object model page names will be indented relative their parent names.
-
-
- 3. Event Trace
-
- The Event Trace Toolbox contains seven different tools:
-
-  
-
-
-
-
-
-
-
-
-
-
-
-
- 3.1 Select Tool
- The select tool in the Event Trace diagram works the same way as in the Object Model diagram. The only
- difference it that when you move items in the Event Trace diagram the move cursor may look different.
- When you move threads, you can only move them sideways why the move cursor looks like this   . When
- you're moving boxes, you may only move them up and down why the cursor looks like this   .
-
- You also use the select tool to change the size of threads and boxes. If you hit either end of a thread, the
- cursor will change to the resize cursor which looks like this   . You may then change the size of the
- threads. Note that all threads will change size. They always have the same height. To alter the size of a box,
- hit either end of the box and the cursor changes to the resize cursor. Then move the mouse to change the
- size of the box.
-
- 3.2 Thread Tool
- The Thread Tool is used to create thread items in the Event Trace diagram. Not much to say about this tool
- except that the height of a new thread is determined by the height of other threads in the diagram. All
- threads must always have equal heights.
-
- 3.3 Box Tool
- The Box Tool is used to create box items in the Event Trace. When you have selected this tool and moves the
- cursor over a thread, a hanging box will appear below the cursor. This indicates that you may create a box
- at the current position.
-
- 3.4 Event Tool
- The Event Tool is used to create an event between two boxes. When this tool is selected the cursor will
- change into the event cursor  .
-
- Position the cursor at a box, press and hold the button and stretch a line to the other box and then release
- the button. If you want a selfreferencing event, press and release the button in the same box item.
-
- If you release the button outside any box item, no event will be created.
-
- 3.5 Package & Note & Inspect Tool
- Are exactly the same as the Object Model package, note and inspect tool.
-
-
- 4. State Diagrams
-
- The State Diagram Toolbox contains nine different tools.
-
-  
-
-
-
-
-
-
-
-
-
-
-
-
- 4.1 Select Tool
- The select tool in the State Diagram works the same way as in the Object Model diagram.
-
- 4.2 State Tool
- This tool is used to create a state model element.
-
- 4.3 Initial and Final State Tool
- These tools can be used to insert final and initial state symbols (bull's eye and filled circle).
-
- 4.4 Event Tool
- The Event Tool can be used to create an event starting from a state (ordinary or initial) ending
- in a state (ordinary or final).
-
- 4.5 Cut Tool
- The Cut Tool can be used to split an event line into two. Position the top of the knife cursor at the line
- where you want it to be splitted.
-
- 4.6 Package & Note & Inspect Tool
- Are exactly the same as the Object Model package, note and inspect tool.
-
-
- 5. Use Case Diagrams
-
- The Use Case Toolbox contains eight different tools.
-
-  
-
-
-
-
-
-
-
-
-
-
-
-
- 5.1 Select Tool
- The select tool in the Use Case diagram works the same way as in the Object Model diagram.
-
- 5.2 Use Case Tool
- This tool can be used to create a use case symbol.
-
- 5.3 Actor Tool
- This tool can be used to create an actor symbol.
-
- 5.4 Communicates Tool
- This tool can be used to connect an actor with a use case.
-
- 5.5 Cut Tool
- The Cut Tool can be used to split a communication line into two. Position the top of the knife cursor at the line
- where you want it to be splitted.
-
- 5.6 Package & Note & Inspect Tool
- Are exactly the same as the Object Model package, note and inspect tool.
-
-
- 6. The Menus
- The Object Plant has five fixed menus and two menus which appear now and then. The fixed menus are:
- File, Edit, View, Special and Windows.
-
- 6.1 File Menu
- When no document is open, the file menu looks like this:
-
-  
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- The New, Open, Save, Save as, Close and Quit do not require any explanation, do they?
-
- When a document is open (note that a document may be open even though no windows are visible) the File
- menu looks like this:
-
-  
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- The "Document Info..." item contains two submenus: "General..." and "Datatypes...". In the General item you
- can select the notation to be used with the document. The Datatypes item will bring up a dialog where
- you can specify the data types used in the document (project). You can create your own set of data types
- by adding and removing data types as you like. There is one standard C++ data type set included in the Object
- Plant package which can be loaded using the "Load set"-button.
-
- Here the "Export Page as..." item is used to export the current main window content in PICT or EPS format.
- Note that not all types of window may be exported, only the four main windows: Object Model, State
- Diagram, Event Trace and Use Case windows.
-
- The "Generate code..." item is used to generate code as described by the currently selected template files (in
- the Code generation preferences dialog).
-
- The Print Page item will print the selected page in the currently active main window.
-
- 6.2 Edit Menu
- In this menu the Cut, Copy and Paste items are enabled and implemented for text fields. Copy and Paste are also
- enabled for certain items in the diagrams such as classes, states and threads. The Clear can also be used to
- delete parts in the Object Model, State Diagram, Event Trace and Use Case diagram.
-
-  
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- The Clear item can also be used to delete class attributes and operations. To do this, doubleclick on the class box so
- that the Class Dialog Window appears. Then select the attribute or operation to be deleted by clicking to the left
- of the attribute's (or operation's) name or description field. The attribute will then be selected and the
- "Clear" item of the Edit menu will be enabled.
-
- Event entries in state boxes can be deleted the same way as class attributes and operations.
-
- 6.3 View Menu
- The number of items in this menu depends upon the number of "View sets" that you have defined in the
- Edit->Preferences... dialog.
-
- 6.4 Special Menu
- This menu has four items: Info, Align, New Page and Delete Page.
-
-  
-
-
-
-
-
-
-
- "Info" will be enabled when one or several items in the currently active main window are selected. Choosing
- "Info" will present a dialog window for each of the selected items. The same dialog window will appear when
- doubleclicking on an item.
-
- If you delete the last page in for example the Object Model, a new empty page will automatically be created
- since all models must have at least one page.
-